Log In  
BBS > Lexaloffle Community Superblog
This is a combined feed of all Lexaloffle user blogs. For Lexaloffle-related news, see @zep's blog.

All | Following | PICO-8 | Voxatron | General | Off-site
[ :: Read More :: ]

Warning

This game contains flickering sprites, so be careful if you are prone to epileptic seizures.
There is an option in the menu to toggle flickering on or off if you need to.

This game also features a scrolling background which may cause motion sickness in some individuals.
This can also be disabled in the menu.

Cart #mahuhiwohi-20 | 2019-04-07 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

A basic WIP shmup inspired by Danmaku.
Apologies for the messy code; I'm not super familiar with LUA or Pico-8 yet.
Comments and criticism are welcome!

Mechanics

Focus

This game features a fairly standard FOCUS MODE, as seen in many shmups.
Basically you press the button and you shift most of your ship's power into its weapons, allowing you to fire a focused, more powerful beam at the cost of movement speed. FOCUS MODE also makes your hitbox more visible.

Shields

You'll notice a blue glow around your ship; this is your shield.
When you get hit, your shield dissipates, and goes on cooldown for a while.
Taking a hit without your shield results in death, although you have a short period of invulnerability while you're flashing, because this is a videogame.

Bullets

Green bullets are yours and don't harm you, while pink ones are enemy fire and will hurt you.
I haven't finished implementing enemy attacks yet, but the game currently spawns a couple test bullets.

As of v0.14.0, getting hit with your shields up causes the shield to send out an electromagnetic pulse, wiping out enemy bullets. I'll probably tone this way down in the future, but the functionality is there.

Controls

⬆️⬇️⬅️➡️: Move
🅾️/Z: Shoot
❎/SHIFT/X: Shift into FOCUS MODE

Changelog

v0.14.1

  • Changed the ALERT sound as it was a little too grating for my tastes
  • Restored the test enemy waves back to what they used to be (three waves instead of one)
  • Fixed a bug where the ALERT animation would play on every wave
  • Added the ability to specify ALERT animations within the level data

v0.14.0

  • Added an ALERT animation for bosses
  • Added a (currently non-functional) health bar display for bosses
  • Tweaked the gauge design
  • Added a new shield mechanic. See mechanics section above for details
  • Moved debug options into the menu

v0.13.2

  • Slowed shot speed down (Thanks Shawn!)
  • Increased default shot spread
  • Tweaked focus beam spawn position
  • Decreased HP of enemy on wave 3

v0.13.1

  • Added a shield gauge
  • Added a sound effect for when the player's shield reactivates
  • Disabled debug stuff

v0.13.0

  • Added a shield system
  • Added a death state

v0.12.1

  • Added an option to disable the star field background for people who get motion sickness
  • Fixed a bug where the song indicator was missing its music note icon

v0.12.0

  • Added a star field background

v0.11.2

  • Added a WIP sprite for enemy type 1
  • Added flickering indicators to enemies for where bullets are going to fire from
  • Added an option to disable flickering

v0.11.1

  • Swapped the controls around and added shift as an option for FOCUS MODE (Thanks for the feedback, Beekeepe!)

v0.11.0

  • Added wave-based enemy spawning. I'm not sure if this is the right way to do things, but it'll do for now.

v0.10.0

  • Took freds72's advice and replaced calls to all() with calls to pairs() (thanks for the tip!)
  • Tweaked the player ship's fire sprite
  • Added an option to the menu to debug the song display (every shmup is required to have a song display)

Pre-v0.10.0

Sorry! I was lazy and wasn't keeping a changelog at this point!
Basically I added movement, focus mode, shooting, and some basic enemies.

P#63236 2019-04-04 18:48 ( Edited 2019-05-23 14:57)
[ :: Read More :: ]

Cart #pixoninja1-0 | 2019-04-04 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1


Just studing some plataform mechanics

P#63232 2019-04-04 17:10
[ :: Read More :: ]

Cart #yoyibogadu-0 | 2019-04-04 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA


So this is my very first cartridge. It is metaballs, slow, but you can change the color with the direction buttons. I worked from 10 pm to midnight

P#63229 2019-04-04 03:54 ( Edited 2019-04-04 03:55)
[ :: Read More :: ]
P#63228 2019-04-04 02:46
[ :: Read More :: ]

Cart #dkojemipa-0 | 2019-04-03 | Code ▽ | Embed ▽ | No License
1

Jonathan Harrow finds himself caught in a radioactive nightmare, help him get out before it's too late. Press Z to start, Z to jump and arrow keys to move, X to fire your blaster. Made for itch.io weekly game jam 90

P#63226 2019-04-03 20:50
[ :: Read More :: ]

Cart #a2fontandbeep-0 | 2019-04-02 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7

I just entered the basic uppercase Apple ][+ font in sprites and added a SFX that is the tone of the boot beep of the Apple ][. If this is exciting to you, use it in whatever project you want with a lil' credit in the comments.

I also added a few character I wish I'd had back then in spritesheet 1.

Initial running of the cart cuts off the beep. Reset the cart to hear it properly (hit Return and choose).

Enjoy!

P#63202 2019-04-02 23:37 ( Edited 2019-04-02 23:40)
[ :: Read More :: ]

Cart #picotetris-5 | 2019-04-29 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
249

Another Tetris clone, I know :P

I managed to squeeze in an extra mode, take a look if you want!

Why are you reading this, it's Tetris, you probably already know how it works

Anyways, this clone is guideline-compliant in large parts (except where the guideline is boring or confusing to me), including Standard Rotation System and kicks. It has a steep difficulty curve, and a lot of options to adjust gameplay, animations, or Tetromino sprites (I have 16 now!).

I implemented 9 different modes, and up to 3 highscores are automatically saved per mode (options are also automatically saved btw)

If that description was too dry and boring (writing it wasn't much fun either, so I understand you), it also has lasers and poorly drawn donuts, what more could you want from a game?

Thanks to @Actually_Ed and @DavidMazarro for some great ideas!

Controls:

  • ⬅️/➡️
    -shift Tetromino

  • ⬇️
    -soft drop Tetromino (locks if hard-drop set to non-locking!)

  • ⬆️
    -hard drop Tetromino (locking by default, can be toggled in options)

  • ❎/🅾️
    -ccw/cw rotation (can be inverted in options)

  • ❎+🅾️
    -hold

  • Enter
    -Pause menu (with options to retry, go back to title, or mute the game)

Modes:

  • Survival (new!)

    • Single rows of garbage are randomly inserted at the bottom, see for how many line clears you can survive!
  • Infinite

    • There is no winning condition, you just go on until you top out or you get bored
  • Marathon

    • Game ends after you cleared 150 lines
  • Sprint

    • You have 2 minutes to clear as many lines as you can
  • Garbage

    • When you start the game, the well is filled with 15 lines of garbage, clear them all as fast as possible
  • Combo

    • The well is filled with walls of respawning garbage left and right, making combos incredibly easy
  • Master

    • Marathon mode, starting at lv 20 (instant gravity, and very low delays, extremely difficult!)
  • Invisible

    • Yeah good luck with that one, idk why I even implemented it
  • Secret Grade

    • It's a secret, don't you dare look it up

Screenshots:


Please note these are all from old versions, I'm just too lazy to update them

Title screen

Options menu

Standard mode, standard sprites, standard everything

Alternate sprites, don't like these as much

This one's so good

Here is an image of garbage mode, with another good set of sprites (btw theres a rounded version of this one too)

This is what combo mode looks like

The mode that you shall not play

Changelog

  • 0.9.1

    • Added Secret Grade mode
    • Changed Combo mode so walls are rebuilt as you clear lines
    • Combo mode ends if you drop the combo
    • Small changes to how hold works
  • 0.9.3

    • Different mode descriptions
    • Automatic saving and loading of options and highscores
    • Highscore menu, with option to delete all scores
    • Mini Tetrominoes in preview can now use the downscaled preview sprite
    • Changed game over screen to show your score if appropriate
    • Probably a bunch of other minor stuff I lost track of
  • 0.9.5

    • Mostly animations: for line clears, hard drops, backgrounds
    • Forgot about any other changes, probably just minor stuff
  • 1.0

    • I kept notice of my changes this time
    • When hard-drop is non-locking, soft-drop locks instead
    • Levelling is now static (30 lines/level)
    • Gravity increases twice as fast per level now (not sure if that makes it harder overall than before)
    • Line clears give more points on higher levels
    • Introduced higher delays between pieces
    • Why do you even read this
    • On higher levels, ghost/grid disappear, also delays incrementally decrease (brutal difficulty above lv20)
    • Highscore shown to the right
    • Several UI changes, SFX in menus
    • Progress bar and background grid (both adjustable)
    • Optional laser SFX for line clears
    • Game can be muted from pause menu
    • A bunch of new options to play with
    • Some new sprites, including donuts
    • Bugfixes
  • 1.1

    • Survival mode
    • Progress bar is now on by default

Old versions


Cart #picotetris-4 | 2019-04-26 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
249


Cart #picotetris-3 | 2019-04-21 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
249


Cart #picotetris-2 | 2019-04-17 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
249


Cart #picotetris-1 | 2019-04-02 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
249


Cart #picotetris-0 | 2019-04-02 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
249


Any feedback and recommendations welcome! <3

P#63193 2019-04-02 18:34 ( Edited 2019-04-29 13:11)
[ :: Read More :: ]

Cart #sugarknight-0 | 2019-04-02 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

P#63186 2019-04-02 15:45
[ :: Read More :: ]

Cart #wagonswimming-0 | 2019-04-02 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

P#63185 2019-04-02 15:44
[ :: Read More :: ]

Cart #chromepants-0 | 2019-04-02 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

P#63184 2019-04-02 15:42
[ :: Read More :: ]

Here I go again with this kinda classic 80's arcade Donkey Kong's style twist.

you play Denis,
you can't jump,
but you can throw hammers to kill shop guys enemys
you get bonus +50 pts when you collect minimum of 4 table legs, 4 screws and 1 table top.

Enjoy! :-)

Cart #suhihabawi-4 | 2020-07-01 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
12

P#63174 2019-04-02 02:09 ( Edited 2020-07-01 20:52)
[ :: Read More :: ]

Cart #zhopper-0 | 2019-04-01 | Code ▽ | Embed ▽ | No License
9

A cute mini-feature with my own music, art, plot, etc.
Always in favour of naive, amateur art and programming; click play if you agree, it's all automatic.

Thanks for looking!

P#63144 2019-04-01 00:37 ( Edited 2019-04-01 00:59)
[ :: Read More :: ]

Cart #gravdog-0 | 2019-03-31 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
5


Made for CCAW jam. (https://itch.io/jam/ccaw-jam)

Get dog into the doghouse by moving planets and blasting jetpacks.

Definitely my biggest pico-8 game yet. Time to learn how to use metatables...

P#63143 2019-03-31 21:05 ( Edited 2019-03-31 21:05)
[ :: Read More :: ]

Cart #ix_bees-1 | 2019-03-31 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3

Controls

Menu: Z to start game.

Game: UP/DOWN to adjust nectar quota (how much nectar a bee will collect before returning to the hive)
Z (when the 'add bee' icon is visible) to add a bee at a cost of 10 nectar

Game over: Z to restart.

Mechanics

Bees visit flowers for nectar (but they can only find flowers within a certain radius, so they explore if they don't find one right away). Bees collect nectar until they have enough for the quota, then they bring it back to the hive. As the hive accumulates nectar it can produce more bees. Bees have limited lives, but every time a bee dies, a new flower is born somewhere in the garden. Every visit of a bee to a flower adds pollen to the flower, which helps the flower produce more nectar. You can adjust how much the nectar quota is, balancing between bees being away longer (more likely to die without returning their nectar) and bees spending too much time on journeys to the hive (not using time efficiently). You can also add new bees once there is ten or more nectar in the hive.

The game is over when the last bee has died and there is not enough nectar left to add a new one.

(I am not trying for realism in any way with this game!!!)

Commentary

I started with just bees, and they would look around for flowers. Writing rules for entities and seeing how they work is great fun. This game was a slow burn but a great experience. I was flexing my systems design brain gently throughout the month, trying to ride the line between 'there's nothing to do here' and 'this game is asking too much of me'. I think it came out pretty well in that sense. The only interaction from the player (if they even want to interact) is to adjust the nectar quota and get the bees coming back more/less often, or add new bees.

itch.io page: here.

#onegameamonth March 2019

P#63139 2019-03-31 17:57 ( Edited 2019-03-31 18:48)
[ :: Read More :: ]

Cart #transflaganimation-1 | 2019-03-31 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
9

Made this little flag animation for trans day of visibility, and I quite like it :)

Also here's a reminder to everyone trans:
You are wonderful and amazing and I hope you have an excellent day!

P#63137 2019-03-31 10:08
[ :: Read More :: ]

Cart #gfx_import_example-0 | 2019-03-31 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
28

For my game, Witch n Wiz (https://www.lexaloffle.com/bbs/?pid=38117#p), I implemented as simple technique for loading a secondary spritesheet at runtime. This allowed me to have a fullscreen title graphic, but not use up any of the sprite sheet memory (needed for game sprites and map data).

The cart at the top of this post is an ultra simple example of it in use. As you can see, you are able to switch between 2 sprite sheets that would each normally take up the entire sprite memory.

Credit for the num2hex function goes to felice (https://www.lexaloffle.com/bbs/?tid=30910)

Limitations:

You can still only have 128x128 worth of sprites in memory at a time. So this is really best for things like the title screen, or major switches in gameplay (say switching worlds where you don't need any of the original sprites anymore).

The runtime code for this is very light in tokens (~100) but the additional sprite sheet is stored as a large (although compressed) string, so that is going to each into your character count and compressed size (around 8000 chars in a typical case, and 25% of the compressed cart limit).

Tutorial:

1) Export

The first thing you need to do, is export your second sprite sheet into a compressed string format the runtime code expects. To do this, you simply load up this cart in Pico-8:

Cart #gfx_export-0 | 2019-03-31 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
28

Fill the sprite sheet with the content you want to dynamically load at run-time, and hit "run".

This will copy the compressed data to your computers clipboard as a string. Paste that somewhere, like notepad.

2) Copy Runtime Code

Next, open up the import example (or view the code here in the broswer):

Cart #gfx_import_example-0 | 2019-03-31 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
28

There is a small section of code you will need to add to your cart. Everything between "gfx import runtime begin" and "gfx import runtime end".

This is the code here for reference, if you don't want to load up the cart:

--
--gfx import runtime begin.
--
--copy and paste this into your
--game cart.
--example usage after "end".
--

-- converts hex string
-- to actual number
function hex2num(str)
    return ("0x"..str)+0
end

--call this when you want to
--load your fullscreen 
--graphics.
--this assumes a compressed
--format of <count>..<color>..
function load_stored_gfx(gfx)
    index=0
    for i=1,#gfx,2 do
        count=hex2num(sub(gfx,i,i))
        col=hex2num(sub(gfx,i+1,i+1))
        for j=1,count do
        sset((index)%128,flr((index)/128),col)
        index+=1
        end
    end
end

--call this to go back to 
--the original graphics stored
--on the cart.
--eg.after displaying title
--screen.
function restore_gfx()
    reload(0x0,0x0,0x2000)
end

--
--gfx import runtime end.
--

3) Paste Export Data

Go an get that string that got exported in step 1, and paste it into your game cart as a variable somewhere.

--something like this.
--it will be very large, so I just truncated the string in my example here.
local my_gfx="f51d151d151d151d151"

4) Load/Unload As Needed

There are only 2 functions you need to call for the entire library.

First, when you want to use the stored graphics, call load_stored_gfx() and pass it your compressed graphics string (eg. my_gfx) in this example.

When you are done with it, simply call restore_gfx() to return the sprite sheet to its original form.

P#63133 2019-03-31 04:18 ( Edited 2019-03-31 04:22)
[ :: Read More :: ]

Cart #bugcollect-0 | 2019-03-30 | Code ▽ | Embed ▽ | No License
3

BUG COLLECT
Move around to collect bug specimens that add up to the correct number in the upper right corner of the screen.
How many collections can you make in 1 minute?

Arrow keys - move
X - reset bugs
Z - start the game

Oh, and don't step on the eggs!


My entry to the 17-in-1 jam.

Follow me on twitter @brintown

P#63128 2019-03-30 17:21 ( Edited 2019-03-30 17:22)
[ :: Read More :: ]

Cart #b_radius-0 | 2019-03-30 | Code ▽ | Embed ▽ | No License
2

Simple side-scrolling shooter with three waves of enemies.
Try to best your high-score.
Sine balls must be destroyed at top or bottom of arc.

Big_B_Radical

P#63122 2019-03-30 09:03
[ :: Read More :: ]

z - generate new frames
x - start/stop animation
left/right - change between different lsystems
up/down - regenerate all frames/ regenerate system (for stochastic systems)

System handles a variety of lsystems and also generates new frames to interpolate between on
the fly using coroutines.

Big_B_Radical

Cart #lsystem2-0 | 2019-03-30 | Code ▽ | Embed ▽ | No License
2

P#63120 2019-03-30 08:44
[ :: Read More :: ]

Cart #enportal01-0 | 2019-03-29 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
21

This is my first pico cart. I hope you like it. It only has a few levels, and the collision mechanics might be a bit wonky at times.

PicoPort is a Portal demake. Where you solve platforming puzzles by using portals, which teleport you from one point to another.

I might add more levels and more gameplay elements to the game.

Controls:
-Arrows to move around
-Hold x or z to start aiming
-Arrows to aim
-Release x or z to shoot

-X for the pink portal
-Z for the blue portal

P#63106 2019-03-29 13:35
View Older Posts